Skip to content

Keep task log selection stable while dragging - #71155

Open
Andrushika wants to merge 2 commits into
apache:mainfrom
Andrushika:fix-log-viewer-selection-drag
Open

Keep task log selection stable while dragging#71155
Andrushika wants to merge 2 commits into
apache:mainfrom
Andrushika:fix-log-viewer-selection-drag

Conversation

@Andrushika

@Andrushika Andrushika commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

Why

The log viewer virtualizes rows and positions each mounted row absolutely. (position: absolute)
When a downward drag passes the last mounted row, including trailing space inside the viewer, Chrome can move the selection focus to the start of the virtualized block. The selection then reverses instead of following autoscroll.

2026-08-06.7.42.03.mov

What

Use the earlier of the viewer bottom and the last mounted row bottom as the downward drag boundary, then keep the focus on the last mounted row while a left-button drag stays past it. Pointer, selection, and scroll events share one pending animation frame. Upward selection stays native.

2026-08-06.9.43.08.mov

related: #68846, #71148


Was generative AI tooling used to co-author this PR?
  • Yes — Codex (GPT-5)

Generated-by: Codex (GPT-5) following the guidelines

@boring-cyborg boring-cyborg Bot added the area:UI Related to UI/UX. For Frontend Developers. label Aug 5, 2026
Chrome can resolve the drag focus to the start of the absolutely positioned virtualized log block when the pointer moves below the viewport, reversing the selection.
@Andrushika
Andrushika force-pushed the fix-log-viewer-selection-drag branch from 10d752e to 97e5aaf Compare August 6, 2026 12:31
@Andrushika

Copy link
Copy Markdown
Contributor Author

Close and open PR again to re-trigger CI.

@Andrushika Andrushika closed this Aug 6, 2026
@Andrushika Andrushika reopened this Aug 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:UI Related to UI/UX. For Frontend Developers.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant